import axios from 'axios'

// 支持 window 变量动态配置后端地址
const baseURL = window.APP_CONFIG?.BASE_API || '/api'
console.log(baseURL)
// 创建axios实例
const service = axios.create({
  baseURL,
  timeout: 5000
})

/**
 * 统计数据
 * @returns {Promise}
 */
export function getNumList() {
  return service({
    url: '/todo/getNumList',
    method: 'get'
  })
}

/**
 * 获取卡片库列表
 * @returns {Promise}
 */
export function getMemoryData() {
  return service({
    url: '/todo/getMemoryData',
    method: 'get'
  })
}



/**
 * 保存卡片
 * @param {Object} data - 卡片数据
 * @param {number} [data.id] - 卡片ID，更新时必填
 * @param {string} data.title - 卡片标题
 * @param {string} data.content - 卡片内容
 * @param {number} data.categoryId - 卡片库ID
 * @param {number} data.status - 状态
 * @returns {Promise}
 */
export function saveMemory(data) {
  return service({
    url: '/todo/saveMemory',
    method: 'post',
    data
  })
}

/**
 * 文本解析
 * @param {Object} data - 文本解析
 * @param {number} [data.id] - 卡片ID，更新时必填
 * @param {string} data.title - 卡片标题
 * @param {string} data.content - 卡片内容
 * @param {number} data.categoryId - 卡片库ID
 * @param {number} data.status - 状态
 * @returns {Promise}
 */
export function saveDocument(data) {
  return service({
    url: '/todo/saveDocument',
    method: 'post',
    data
  })
}


/**
 * 打卡
 * @param {Object} data - 打卡数据
 * @param {number} data.articleId - 卡片ID
 * @param {number} data.count - 打卡次数
 * @returns {Promise}
 */
export function clockMemory(id) {
  return service({
    url: `/todo/clockMemory/${id}`,
    method: 'get'
  })
}

/**
 * 删除卡片
 * @param {number} id - 卡片ID
 * @returns {Promise}
 */
export function deleteMemory(id) {
  return service({
    url: `/todo/deleteMemory/${id}`,
    method: 'delete'
  })
}

/**
 * 删除卡片
 * @param {number} id - 卡片ID
 * @returns {Promise}
 */
export function deleteMemories(title) {
  return service({
    url: `/todo/deleteMemories/${title}`,
    method: 'delete'
  })
}

// 获取积分
export function getDocumentSegments(title) {
  return service({
    url: '/todo/getDocumentSegments',
    method: 'get',
    params: { title }
  })
}

/**
 * 合并背记卡
*/
export function mergeMemory(data) {
  return service({
    url: '/todo/mergeMemory',
    method: 'post',
    data
  })
}